The following disclosure relates generally to communications systems and, more particularly, to controlling overload in a telecommunications system.
Telecommunications systems are generally designed to operate with finite resource levels. A resource may be used to service traffic (e.g., voice communications, packet data transmissions, etc.) and may be exhausted if too much traffic is being serviced by the system. Because of limitations such as limited resource levels, the system may successfully service traffic up to a maximum resource level, but the service may start to deteriorate when the maximum level is exceeded and there are insufficient resources available. When this occurs, the system goes into “overload” and, in some situations, may fail entirely.
One or more overload control measures may be implemented in such telecommunication systems in an attempt to regulate or at least minimize the impact of such overload. These control measures generally operate by “throttling” the traffic (e.g., permitting only a portion of the traffic to pass through the system). For example, a percent blocking throttle approach blocks and rejects arriving traffic with a given probability. A call gapping throttle rejects traffic for a certain predefined period of time and then accepts traffic for another predefined period of time (e.g., traffic is allowed through a non-adjustable “gap” that exists when the throttle is open). A token bank throttle uses “tokens” to regulate the traffic by allowing only traffic with a token to pass through the throttle. These measures lessen the level of resource usage and may enable the system to continue to service a smaller amount of traffic.
However, none of these control measures adequately address the complexities presented by traffic patterns in telecommunications systems. For example, none of the above control measures is suitable for handling “mixed” traffic that includes multiple types of messages. Furthermore, some of the measures fail because they are unable to compensate for varying overload onset times. For example, if an overload occurs more rapidly than the control system was designed to handle, the system may fail to control the overload. A further problem is that the previously described control measures are generally designed for a specific overload condition having specific traffic parameters and so are unable to react appropriately when an overload occurs that does not fit within the system's parameters.
Accordingly, what is needed is a system and method for controlling overload that is capable of adapting to various overload conditions.